/*******************************************************************************
  * 文件：CRC.h
  * 作者：zyz
  * 版本：v1.0.0
  * 日期：2017-08-03
  * 说明：CRC模块
*******************************************************************************/
#ifndef __CRC_H
#define __CRC_H

/* 头文件 *********************************************************************/
#include "Typedefine.h"
#include "Constant.h"

/* 宏定义 *********************************************************************/
#define USE_CRC_TABLE_FOR_CALCULATION    (TRUE)            // 使用查表方式
#define u16CRC_POLYNOMIAL               ((U16) 0x1021)    // 多项式
#define u16TEST_HI_BIT_ON_MASK          ((U16) 0x8000)    // 高位掩码
#define u16ZERO_UPPER_BYTE_MASK         ((U16) 0x00FF)    // 高字节零掩码

/* 类型定义 *******************************************************************/
/* 变量声明 *******************************************************************/
/* 函数声明 *******************************************************************/
// 计算CRC16
U16 CRC_CalcValue(U8* pu8Buf, U32 u32Len, U16 u16Seed);

#endif /* __CRC_H */

/***************************** 文件结束 ***************************************/
